Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Commit 862cbbc7648c15b2c1afb57f9017692cdd397682


Parents : 990cc9d
Author : Ivan <ivan@quad4.io>
Signature : Invalid signer <e46112d44649266d71fe2193e00a4710>, author is <ivan@quad4.io>
Date : 2026-07-14T13:31:26-05:00

fix: handle Python runtime startup failure in MainActivity and redirect to messages on empty hash in frontend

Changes

3 files changed, 11 insertions(+), 1 deletions(-)


Diff

diff --git a/android/app/src/main/java/com/meshchatx/MainActivity.java b/android/app/src/main/java/com/meshchatx/MainActivity.java
index 17dd2529..a9426fe8 100644
--- a/android/app/src/main/java/com/meshchatx/MainActivity.java
+++ b/android/app/src/main/java/com/meshchatx/MainActivity.java
@@ -201,7 +201,13 @@ public class MainActivity extends AppCompatActivity {
showLoading("Starting MeshChatX…");
if (!Python.isStarted()) {
- Python.start(new AndroidPlatform(this));
+ try {
+ Python.start(new AndroidPlatform(this));
+ } catch (Exception e) {
+ backendFailed = true;
+ showStartupError("MeshChatX Python runtime failed to start:", toStackTrace(e));
+ return;
+ }
}
try {
org.able.BLE.setAppContext(this);

diff --git a/meshchatx.rsm b/meshchatx.rsm
index de281d48..e9f4e560 100644
Binary files a/meshchatx.rsm and b/meshchatx.rsm differ

diff --git a/meshchatx/src/frontend/main.js b/meshchatx/src/frontend/main.js
index 88e2c58f..9a19e3a9 100644
--- a/meshchatx/src/frontend/main.js
+++ b/meshchatx/src/frontend/main.js
@@ -50,6 +50,10 @@ const vuetify = createVuetify({
},
});
+if (!window.location.hash || window.location.hash === "#") {
+ history.replaceState(null, "", "#/messages");
+}
+
const router = createRouter({
history: createWebHashHistory(),
routes: [


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────